package com.zzl.finance.order.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zzl.apidoc.annotation.ApidocModel;
import com.zzl.apidoc.annotation.ApidocModelProperty;
import com.zzl.finance.order.dto.feigndto.TicketFinanceOrderDto;
import com.zzl.finance.order.entity.feign.TicketFinanceEntity;
import com.zzl.general.common.utils.DoubleSerialize;
import lombok.Data;

import java.util.Date;

/**
 * @author : spp
 * @date : 2022/3/9 13:36
 */
@Data
@ApidocModel
public class OrderDetailDto {

    @ApidocModelProperty(description = "订单编号")
    private String orderNo;
    @ApidocModelProperty(description = "订单status字符串")
    private String orderStatusStr;
    private Integer orderStatus;

    private Integer orderType;
    @ApidocModelProperty(description = "订单类型字符串 1：融资服务费，2：购买产品")
    private String orderTypeStr;

    @JsonSerialize(using = DoubleSerialize.class)
    @ApidocModelProperty(description = "订单总金额")
    private Double orderAmount;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApidocModelProperty(description = "创建时间", validate = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    private Integer invoiceStatus;

    @ApidocModelProperty(description = "申请人")
    private String applicant;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApidocModelProperty(description = "申请时间", validate = "yyyy-MM-dd HH:mm:ss")
    private Date applicantTime;


    @ApidocModelProperty(description = "发票状态字符类型")
    private String invoiceStatusStr;

    @ApidocModelProperty(description = "融资对象")
    private TicketFinanceOrderDto financeOrderDto;

    @ApidocModelProperty(description = "付款企业名称")
    private String paymentEnterpriseName;
}
